"""
对象.rank(axis=0, method='average', ascending=True, na_option='keep')
    axis: 轴，0表示行，1表示列

    method:表示在具有相同值的情况下，所使用的排序方法
        average: 默认值
        min：最小值排名
        max: 最大值排名
        first: 按照在原始数据中出现的顺序
        dense: 密集排序，类似于min，排名相同的数据，只占一个名次

    na_option: 空值的排序方式
        keep: 保留
        top: 如果升序，最小排名给NaN
        bottom: 如果升序，将最大排名给NaN
"""
import pandas as pd

pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 100)
pd.set_option('display.width', 1000)
pd.set_option('display.unicode.east_asian.width', True)

excel = pd.read_excel('resources/电脑配件销售记录.xlsx')

excel = excel.sort_values(by='数量', ascending=False)
print(excel)

# 进行排名
excel['顺序排名'] = excel['数量'].rank(ascending=False) # 数量相同时，排名相同时，采用平均值
print(excel)
